package com.vanke.kotlin_mvp.taskdetail

import com.vanke.kotlin_mvp.BasePresenter
import com.vanke.kotlin_mvp.BaseView

/**
 * @name Kotlin_MVP
 * @package name：com.vanke.kotlin_mvp.taskdetail
 * @class describe
 * @anthor shiyuchuan
 * @time 2017/8/22 15:12
 */
interface TaskDetailContract{

    interface View : BaseView<Presenter>{
        fun setLoadingIndicator(active: Boolean)

        fun showMissingTask()

        fun hideTitle()

        fun showTitle(title: String)

        fun hideDescription()

        fun showDescription(description: String)

        fun showCompletionStatus(complete: Boolean)

        fun showEditTask(taskId: String)

        fun showTaskDeleted()

        fun showTaskMarkedCompleted()

        fun showTaskMarkedActive()

        val isActive: Boolean


    }

    interface Presenter : BasePresenter{
        fun editTask()

        fun deleteTask()

        fun completeTask()

        fun activateTask()
    }
}